home *** CD-ROM | disk | FTP | other *** search
/ Language/OS - Multiplatform Resource Library / LANGUAGE OS.iso / cocktail / rex.lha / rex / m2c / ScanTabs.h < prev    next >
C/C++ Source or Header  |  1992-08-18  |  3KB  |  78 lines

  1. #define DEFINITION_ScanTabs
  2.  
  3. #ifndef DEFINITION_IO
  4. #include "IO.h"
  5. #endif
  6.  
  7. #define ScanTabs_NoRule    0
  8. #define ScanTabs_NoAction    0
  9. #define ScanTabs_EofAction    1
  10. #define ScanTabs_EolAction    2
  11. #define ScanTabs_EobAction    3
  12. #define ScanTabs_TabAction    4
  13. #define ScanTabs_CopyAction    5
  14. #define ScanTabs_BlankAction    6
  15. typedef SHORTCARD ScanTabs_TableElmt;
  16. typedef ScanTabs_TableElmt ScanTabs_StateRange;
  17. typedef ScanTabs_TableElmt ScanTabs_RuleRange;
  18. typedef ScanTabs_TableElmt ScanTabs_RuleType;
  19. typedef CARDINAL ScanTabs_TableRange;
  20. typedef ScanTabs_TableElmt ScanTabs_ActionType;
  21. typedef struct ScanTabs_1 {
  22.     ScanTabs_TableElmt Check, Next;
  23. } ScanTabs_ControlType;
  24. typedef struct ScanTabs_2 {
  25.     ScanTabs_RuleRange A[100000 + 1];
  26. } ScanTabs_RuleBase;
  27. typedef struct ScanTabs_3 {
  28.     ScanTabs_RuleType A[100000 + 1];
  29. } ScanTabs_Rule;
  30. typedef struct ScanTabs_4 {
  31.     ScanTabs_TableElmt A[100000 + 1];
  32. } ScanTabs_Base;
  33. typedef struct ScanTabs_5 {
  34.     ScanTabs_StateRange A[100000 + 1];
  35. } ScanTabs_Default;
  36. typedef struct ScanTabs_6 {
  37.     ScanTabs_ControlType A[100000 + 1];
  38. } ScanTabs_Control;
  39. typedef struct ScanTabs_7 {
  40.     ScanTabs_StateRange A[100000 + 1];
  41. } ScanTabs_EobTrans;
  42. typedef struct ScanTabs_8 {
  43.     ScanTabs_StateRange A[100000 + 1];
  44. } ScanTabs_Context;
  45. typedef struct ScanTabs_9 {
  46.     ScanTabs_ActionType A[100000 + 1];
  47. } ScanTabs_Action;
  48. extern ScanTabs_RuleBase *ScanTabs_RuleBasePtr;
  49. extern LONGINT ScanTabs_RuleBaseSize;
  50. extern ScanTabs_Rule *ScanTabs_RulePtr;
  51. extern LONGINT ScanTabs_RuleSize;
  52. extern ScanTabs_Base *ScanTabs_BasePtr;
  53. extern LONGINT ScanTabs_BaseSize;
  54. extern ScanTabs_Default *ScanTabs_DefaultPtr;
  55. extern LONGINT ScanTabs_DefaultSize;
  56. extern ScanTabs_Control *ScanTabs_ControlPtr;
  57. extern LONGINT ScanTabs_ControlSize;
  58. extern ScanTabs_EobTrans *ScanTabs_EobTransPtr;
  59. extern LONGINT ScanTabs_EobTransSize;
  60. extern ScanTabs_Context *ScanTabs_ContextPtr;
  61. extern LONGINT ScanTabs_ContextSize;
  62. extern ScanTabs_Action *ScanTabs_ActionPtr;
  63. extern LONGINT ScanTabs_ActionSize;
  64. extern ScanTabs_ActionType ScanTabs_ActionNr;
  65. extern ScanTabs_TableRange ScanTabs_TableSize;
  66. extern ScanTabs_TableRange ScanTabs_TableEntries;
  67. extern void ScanTabs_MakeTables ARGS((BOOLEAN ReduceCaseSize));
  68. extern void ScanTabs_CompressTables ARGS((SHORTINT Optimize));
  69. extern void ScanTabs_PutTables ARGS((BOOLEAN ReduceCaseSize));
  70. extern void ScanTabs_WriteTables ARGS(());
  71. extern void ScanTabs_QueryTables ARGS(());
  72. extern void ScanTabs_PutComb ARGS((IO_tFile File));
  73. extern void ScanTabs_PutBase ARGS((IO_tFile File));
  74. extern void ScanTabs_PutDefault ARGS((IO_tFile File));
  75. extern void ScanTabs_PutEobTrans ARGS((IO_tFile File));
  76. extern void ScanTabs_PutAction ARGS((IO_tFile File));
  77. extern void BEGIN_ScanTabs();
  78.